package com.hhh.sun.pojo.entity;

import com.alibaba.fastjson.annotation.JSONField;
import com.baomidou.mybatisplus.annotation.*;

import java.io.Serializable;
import java.util.Date;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * 
 * @TableName tb_user
 */
@TableName(value ="tb_user")
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class TbUser implements Serializable {
    /**
     * 用户id
     */
    @ApiModelProperty(value = "用户id", position = 1)
    @TableId(type = IdType.AUTO)
    private Integer id;

    /**
     * 用户名字
     */
    @ApiModelProperty(value = "用户名字", position = 2)
    private String userName;

    /**
     * 用户密码
     */
    @ApiModelProperty(value = "用户密码", position = 3)
    private String password;

    /**
     * 用户电话
     */
    @ApiModelProperty(value = "用户电话", position = 4)
    private String phone;

    /**
     * 用户邮箱
     */
    @ApiModelProperty(value = "用户邮箱", position = 5)
    private String email;

    /**
     * 用户权限,1为管理员，0为普通用户
     */
    @ApiModelProperty(value = "用户权限,1为管理员，0为普通用户", position = 6)
    private Integer role;

    /**
     * 该用户是否加入了黑名单，1为已经加入黑名单
     */
    @ApiModelProperty(value = "该用户是否加入了黑名单，1为已经加入黑名单", position = 7)
    private Integer isban;

    /**
     * 用户的信息的创建时间
     */
    @ApiModelProperty(value = "用户的信息的创建时间", position = 8)
    @TableField(fill = FieldFill.INSERT)//插入数据时自动填充
    private Date createTime;

    /**
     * 用户的信息的最新修改时间
     */
    @ApiModelProperty(value = "用户的信息的最新修改时间", position = 9)
    @TableField(fill = FieldFill.INSERT_UPDATE)//插入和更新时自动填充
    private Date updateTime;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}